/*
 * @Author: linzaifei 1609781601@qq.com
 * @Date: 2025-05-03 14:25:32
 * @LastEditors: linzaifei 1609781601@qq.com
 * @LastEditTime: 2025-06-03 17:21:09
 * @FilePath: /amap-web-vr/src/utils/map.ts
 * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
 */


// let vueMap: any = null;

// var labelsLayer :any = null;

// export function initMap(map:any) {
//     vueMap = map;
//     addLabelsLayer(); // 添加标签图层
// }

// var marker: AMap.Marker | null = null

// export const getBounds = ()=>{
//     if (!vueMap) throw new Error('地图未初始化');
//     return vueMap.getBounds();
// }
// // 用于监听地图移动事件
// export const onMoveEnd = (mapMove: (e: any) => void)=>{
//     if (!vueMap) throw new Error('地图未初始化');
//     // 监听地图移动事件，并执行传入的函数
//     vueMap.on('moveend', mapMove);
// }
// export const offMoveEnd = (mapMove: (e: any) => void)=>{
//     if (!vueMap) throw new Error('地图未初始化');
//     // 监听地图移动事件，并执行传入的函数
//     vueMap.off('moveend', mapMove);
// }


// export const setCenter = (location:any) => {
//   if (!vueMap) throw new Error('地图未初始化');
//   vueMap.setCenter(location);
// }

// export const setZoomAndCenter = (zoom:number = 14, location:any) => {
//   if (!vueMap) throw new Error('地图未初始化');
//   vueMap.setZoomAndCenter(zoom,location);
// }

// export const placeSearch = async (keyword: string) => {
//   if (!vueMap) throw new Error('地图未初始化');
//   return new Promise((resolve, reject) => {
//     AMap.plugin('AMap.PlaceSearch', () => {
//       console.log("AMap.PlaceSearch");
// // 由于类型检查提示“typeof AMap”上不存在属性“PlaceSearch”，使用类型断言解决
//       const placeSearch = new (AMap as any).PlaceSearch({
//         map: vueMap
//       });
//       // console.log("placeSearch",placeSearch);
//       placeSearch.search(keyword, (status: string, result: any) => {
//         if (status === 'complete') {
//           resolve(result);
//         } else {
//           reject(result);
//         }
//       });
//     });
//   });
// };


// export const addLabelsLayer = () => {
//   labelsLayer = new AMap.LabelsLayer({
//     zIndex: 1000,
//     collision: false, //该层内标注是否避让
//     allowCollision: false, //不同标注层之间是否避让  
//   });
//   vueMap.add(labelsLayer);
// }

// export const add = (options: Array<any>) => {
//   if (!labelsLayer) throw new Error('标签图层未初始化');
//   labelsLayer.add(options);
  
// }
// export const remove = (options: Array<any>) => {
//   if (!labelsLayer) throw new Error('标签图层未初始化');
//   labelsLayer.remove(options);
// }